package LinkedList;

public interface ListFunction {

    /**
     * 头插法
     */
    public void addFirst(int value);

    /**
     * 尾插
     */
    public void addLast(int value);

    /**
     * 通过下标来插入节点
     */
    public void add(int index, int value);

    /**
     * 查找是否包含关键字 key 的节点
     */
    public boolean contains(int key);

    /**
     * 删除第一次出现关键字为 key 的节点
     */
    public void remove(int key);

    /**
     * 删除所有值为 key 的节点
     */
    public void removeAllKey(int key);

    /**
     * 得到单链表的长度
     */
    public int size();

    /**
     * 输出完整的链表
     */
    public void display();

    /**
     * 清空链表
     */
    public void clear();
}


